Kubernetes : Configure Admin Node
2015/12/13 |
Install Kubernetes which is the Orchestration System for Docker Containers.
For example, Configure Kubernetes Cluster with 1 Admon Node and 2 Container Node like follows.
+---------------------+ | [ Admin Node ] | | dlp.srv.world | | | +----------+----------+ | +----------------------+ | +----------------------+ | [ Node01 ] |10.0.0.51 | 10.0.0.52| [ Node02 ] | | node01.srv.world +----------+----------+ node02.srv.world | | | | | +----------------------+ +----------------------+ |
Configure Admon Node on this section.
|
|
[1] | Install required packages. |
[root@dlp ~]# yum -y install kubernetes etcd flannel
|
[2] | Configure Kubernetes. |
# generate RSA key [root@dlp ~]# openssl genrsa -out /etc/kubernetes/service.key 2048
[root@dlp ~]#
vi /etc/kubernetes/controller-manager # line 7: add KUBE_CONTROLLER_MANAGER_ARGS=" --service_account_private_key_file=/etc/kubernetes/service.key "
[root@dlp ~]#
vi /etc/kubernetes/apiserver # line 8: change KUBE_API_ADDRESS="--address= 0.0.0.0 "
# line 17: change to Admin Node's hostname or IP address KUBE_ETCD_SERVERS="--etcd_servers=http:// dlp.srv.world :2379"
# line 20: IP range for Kubernetes service (change it if need) KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16" # line 26: add KUBE_API_ARGS=" --service_account_key_file=/etc/kubernetes/service.key "
[root@dlp ~]#
vi /etc/etcd/etcd.conf # line 7: uncomment ETCD_LISTEN_PEER_URLS="http://localhost:2380" # line 8: add etcd Host's hostname or IP address ETCD_LISTEN_CLIENT_URLS=" http://dlp.srv.world:2379 ,http://localhost:2379"
[root@dlp ~]#
vi /etc/kubernetes/config # line 22: change to Admin Node's hostname or IP address KUBE_MASTER="--master=http:// dlp.srv.world :8080"
systemctl start etcd kube-apiserver kube-controller-manager kube-scheduler [root@dlp ~]# systemctl enable etcd kube-apiserver kube-controller-manager kube-scheduler |
[3] | Configure Flannel networking. |
[root@dlp ~]#
vi flannel-config.json # create new # specify network range you like which is used inside Container Nodes { "Network":"172.16.0.0/16", "SubnetLen":24, "Backend":{ "Type":"vxlan", "VNI":1 } }
[root@dlp ~]#
vi /etc/sysconfig/flanneld # line 4: change to Flannel Host's hostname or IP address FLANNEL_ETCD="http:// dlp.srv.world :2379"
# line 8: confirm the parameter FLANNEL_ETCD_KEY="/atomic.io/network" etcdctl set atomic.io/network/config < flannel-config.json [root@dlp ~]# systemctl start flanneld [root@dlp ~]# systemctl enable flanneld |
[4] | Make sure th settings. It's OK if following result is displayed. |
[root@dlp ~]# kubectl cluster-info Kubernetes master is running at http://localhost:8080 |